//+--------------------------------------------------------------------------------
//| Copyright (c) 2012 - 2013 ### an.vuongngocduy
//| This file is a part of Compact Game Engine (CGE)
//+--------------------------------------------------------------------------------
#ifndef __CGE_IMAGETRANSCODERPNG_H__
#define __CGE_IMAGETRANSCODERPNG_H__

#include "cgeImageTranscoder.h"

namespace cge
{
	namespace gfx
	{
		//! Support reading and writing image from Portable Network Graphic (PNG) file / buffer
		class ImageTranscoderPNG : public ImageTranscoder
		{
		public:
			//! Load image from stream that contains PNG data
			virtual s8 LoadImage(Stream& inStream, Image& image) const;


			//! Write image to stream using PNG format 
			virtual s8 SaveImage(Stream& outStream, const Image& image) const;
		};
	}
}

#endif//__CGE_IMAGETRANSCODERPNG_H__